﻿/* ----------------------------------------------------------------------
Axiom UI
Copyright (C) 2017-2021 Matt McManis
https://github.com/MattMcManis/Axiom
https://axiomui.github.io
mattmcmanis@outlook.com

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.If not, see <http://www.gnu.org/licenses/>. 
---------------------------------------------------------------------- */

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Types
{
    public class Codecs
    {
        public static IEnumerable<string> CodecTypes = new List<string>()
        {
            "x265",
            "x264",
            "012v",
            "zmbv",
            "zlib",
            "zerocodec",
            "yuv4",
            "yop",
            "ylc",
            "y41p",
            "xwd",
            "xvid",
            "xsub",
            "xpm",
            "xma2",
            "xma1",
            "xface",
            "xbm",
            "xbin",
            "xan_wc4",
            "xan_wc3",
            "xan_dpcm",
            "ws_vqa",
            "wrapped_avframe",
            "wnv1",
            "wmv3image",
            "wmv3",
            "wmv2",
            "wmv1",
            "wmavoice",
            "wmav2",
            "wmav1",
            "wmapro",
            "wmalossless",
            "westwood_snd1",
            "webvtt",
            "webp",
            "wcmv",
            //"wavpack",
            //"wavesynth",
            //"vplayer",
            "vp9",
            "vp8",
            "vp7",
            "vp6f",
            "vp6a",
            "vp6",
            "vp5",
            "vp4",
            "vp3",
            "vorbis",
            "vmnc",
            "vmdvideo",
            "vmdaudio",
            "vixl",
            "vcr1",
            "vc1image",
            "vc1",
            "vble",
            "vb",
            "v410",
            "v408",
            "v308",
            "v210x",
            "v210",
            "utvideo",
            "ulti",
            "txd",
            "twinvq",
            "ttml",
            "ttf",
            "tta",
            "tscc2",
            "tscc",
            //"truespeech",
            "truemotion2rt",
            "truemotion2",
            "truemotion1",
            "truehd",
            "tqi",
            "tmv",
            "timed_id3",
            "tiff",
            "tiertexseqvideo",
            "thp",
            "theora",
            "tgv",
            "tgq",
            "text",
            "tdsc",
            "targa_y216",
            "targa",
            "tak",
            "svq3",
            "svq1",
            "svg",
            "sunrast",
            "subviewer1",
            "subviewer",
            "subrip",
            "stl",
            "ssa",
            "srt",
            "srgc",
            //"speex",
            "speedhq",
            "sp5x",
            "sonicls",
            //"sonic",
            "sol_dpcm",
            //"snow",
            "smvjpeg",
            "smv",
            "smc",
            "smackvideo",
            "smackaudio",
            "siren",
            "sipr",
            "shorten",
            "sheervideo",
            "sgirle",
            "sgi",
            "sdx2_dpcm",
            "scte_35",
            "screenpresso",
            "scpr",
            "sbc",
            "sanm",
            "sami",
            "s302m",
            "rv40",
            "rv30",
            "rv20",
            "rv10",
            "rscc",
            "rpza",
            "roq_dpcm",
            "roq",
            "rl2",
            "realtext",
            "rawvideo",
            "rasc",
            "ralf",
            "ra_288",
            "ra_144",
            "r210",
            "r10k",
            "qtrle",
            "qpeg",
            "qdraw",
            "qdmc",
            "qdm2",
            "qcelp",
            "ptx",
            "psd",
            "prosumer",
            "prores",
            "ppm",
            "png",
            "pjs",
            "pixlet",
            "pictor",
            "pgmyuv",
            "pgm",
            "pcx",
            "pcm_vidc",
            "pcm_u8",
            "pcm_u32le",
            "pcm_u32be",
            "pcm_u24le",
            "pcm_u24be",
            "pcm_u16le",
            "pcm_u16be",
            "pcm_s8_planar",
            "pcm_s8",
            "pcm_s64le",
            "pcm_s64be",
            "pcm_s32le_planar",
            "pcm_s32le",
            "pcm_s32be",
            "pcm_s24le_planar",
            "pcm_s24le",
            "pcm_s24daud",
            "pcm_s24be",
            "pcm_s16le_planar",
            "pcm_s16le",
            "pcm_s16be_planar",
            "pcm_s16be",
            "pcm_mulaw",
            "pcm_lxf",
            "pcm_f64le",
            "pcm_f64be",
            "pcm_f32le",
            "pcm_f32be",
            "pcm_f24le",
            "pcm_f16le",
            "pcm_dvd",
            "pcm_bluray",
            "pcm_alaw",
            "pcm",
            "pbm",
            "pam",
            "paf_video",
            "paf_audio",
            "otf",
            "opus",
            "nuv",
            "notchlc",
            "nellymoser",
            "mxpeg",
            "mwsc",
            "mvha",
            "mvdv",
            "mvc2",
            "mvc1",
            "mv30",
            "musepack8",
            "musepack7",
            "mts2",
            "mszh",
            "msvideo1",
            "mss2",
            "mss1",
            "msrle",
            "msmpeg4v3",
            "msmpeg4v2",
            "msmpeg4v1",
            "mscc",
            "msa1",
            "mpl2",
            "mpegh_3d_audio",
            "mpeg4",
            "mpeg2video",
            "mpeg1video",
            "mp4als",
            "mp3on4",
            "mp3adu",
            "mp3",
            "mp2",
            "mp1",
            "mov_text",
            "motionpixels",
            "mmvideo",
            "mlp",
            "mjpegb",
            "mjpeg",
            "mimic",
            "microdvd",
            "metasound",
            "mdec",
            "magicyuv",
            "mad",
            "mace6",
            "mace3",
            "m101",
            "lscr",
            "loco",
            "ljpeg",
            "libmp3lame",
            "lame",
            "lagarith",
            "kmvc",
            "klv",
            "kgv1",
            "jv",
            "jpegls",
            "jpeg2000",
            "jacosub",
            "interplayvideo",
            "interplayacm",
            "interplay_dpcm",
            "indeo5",
            "indeo4",
            "indeo3",
            "indeo2",
            "imm5",
            "imm4",
            "imc",
            "ilbc",
            "iff_ilbm",
            "idf",
            "idcin",
            "iac",
            "hymt",
            "huffyuv",
            "hqx",
            "hq_hqa",
            "hnm4video",
            "hevc",
            "hdmv_text_subtitle",
            "hdmv_pgs_subtitle",
            "hcom",
            "hca",
            "hap",
            "h265",
            "h264",
            "h263p",
            "h263i",
            "h263",
            "h261",
            "gsm_ms",
            "gsm",
            "gremlin_dpcm",
            "gif",
            "gdv",
            "g729",
            "g723_1",
            "g2m",
            "frwu",
            "fraps",
            "fmvc",
            "flv1",
            "flic",
            "flashsv2",
            "flashsv",
            "flac",
            "fits",
            "fic",
            "ffvhuff",
            "ffv1",
            "exr",
            "evrc",
            "escape130",
            "escape124",
            "epg",
            "eia_608",
            "eac3",
            "dxv",
            "dxtory",
            "dxa",
            "dvvideo",
            "dvd_subtitle",
            "dvd_nav_packet",
            "dvb_teletext",
            "dvb_subtitle",
            "dvaudio",
            "dts",
            "dst",
            "dss_sp",
            "dsicinvideo",
            "dsicinaudio",
            "dsd_msbf_planar",
            "dsd_msbf",
            "dsd_lsbf_planar",
            "dsd_lsbf",
            "dpx",
            "dolby_e",
            "dnxhd",
            "dirac",
            "dfa",
            "derf_dpcm",
            "dds",
            "daala",
            "cyuv",
            "cscd",
            "cpia",
            "cook",
            "comfortnoise",
            "codec2",
            "cmv",
            "cllc",
            "cljr",
            "clearvideo",
            "cinepak",
            "cfhd",
            "celt",
            "cdxl",
            "cdtoons",
            "cdgraphics",
            "cavs",
            "c93",
            "brender_pix",
            "bmv_video",
            "bmv_audio",
            "bmp",
            "bitpacked",
            "bintext",
            "binkvideo",
            "binkaudio_rdft",
            "binkaudio_dct",
            "bin_data",
            "bfi",
            "bethsoftvid",
            "ayuv",
            "avui",
            "avs2",
            "avs",
            "avrp",
            "avrn",
            "avc",
            "av1",
            "aura2",
            "aura",
            "atrac9",
            "atrac3pal",
            "atrac3p",
            "atrac3al",
            "atrac3",
            "atrac1",
            "asv2",
            "asv1",
            "ass",
            "arib_caption",
            "arbc",
            "aptx_hd",
            "aptx",
            "apng",
            "ape",
            "ansi",
            "anm",
            "amv",
            "amr_wb",
            "amr_nb",
            "alias_pix",
            "alac",
            "aic",
            "agm",
            "adpcm_zork",
            "adpcm_yamaha",
            "adpcm_xa",
            "adpcm_vima",
            "adpcm_thp_le",
            "adpcm_thp",
            "adpcm_swf",
            "adpcm_sbpro_4",
            "adpcm_sbpro_3",
            "adpcm_sbpro_2",
            "adpcm_psx",
            "adpcm_mtaf",
            "adpcm_ms",
            "adpcm_ima_ws",
            "adpcm_ima_wav",
            "adpcm_ima_ssi",
            "adpcm_ima_smjpeg",
            "adpcm_ima_rad",
            "adpcm_ima_qt",
            "adpcm_ima_oki",
            "adpcm_ima_mtf",
            "adpcm_ima_iss",
            "adpcm_ima_ea_sead",
            "adpcm_ima_ea_eacs",
            "adpcm_ima_dk4",
            "adpcm_ima_dk3",
            "adpcm_ima_dat4",
            "adpcm_ima_cunning",
            "adpcm_ima_apm",
            "adpcm_ima_apc",
            "adpcm_ima_amv",
            "adpcm_ima_alp",
            "adpcm_g726le",
            "adpcm_g726",
            "adpcm_g722",
            "adpcm_ea_xas",
            "adpcm_ea_r3",
            "adpcm_ea_r2",
            "adpcm_ea_r1",
            "adpcm_ea_maxis_xa",
            "adpcm_ea",
            "adpcm_dtk",
            "adpcm_ct",
            "adpcm_argo",
            "adpcm_aica",
            "adpcm_agm",
            "adpcm_afc",
            "adpcm_adx",
            "adpcm_4xm",
            @"acelp\.kelvin",
            "ac3",
            "aasc",
            "aac_latm",
            "aac",
            "a64_multi5",
            "a64_multi",
            "8svx_fib",
            "8svx_exp",
            "8bps",
            "4xm",
            "4gv",
        };
    }
}
